﻿using System;
using SharpTrainer.DP.AbstractFactory;
using Zeus.Thunder.Core;

namespace SharpTrainer.DesignPattern
{
    class AbstractFactoryGenTest : ITestCase
    {
        public void Run()
        {
            // Abstract factory #1 
            AbstractFactory factory1 = new ConcreteFactory1();
            AbstractFactoryClient c1 = new AbstractFactoryClient(factory1); 
            c1.Run(); 
            
            // Abstract factory #2 
            AbstractFactory factory2 = new ConcreteFactory2();
            AbstractFactoryClient c2 = new AbstractFactoryClient(factory2); 
            c2.Run();
        }
    }
}
